'''问题描述
小蓝最近迷上了用火柴棒拼数字字符,方法如下图所示:0123456789
他只能拼О至9这十种数字字符,其中每个数字字符需要的火柴棒的数目依次是:6,2,5,5,4,5,6,3,7,6。他不喜欢重复拼同一个数字字符,所以对于每个数字字符他最多拼十个。小蓝会把拼出来的数字字符组合在一起形成一个整数,例如对于整数345，需要的火柴棒的数目为5＋4＋5=14根。
小蓝有300根火柴棒,他想知道自己能拼出的最大整数是多少?可以不使用完这300根火柴棒,可以有多余的火柴棒剩下。'''
import os
import sys

# 请在此输入您的代码
numDic = [6,2,5,5,4,5,6,3,7,6] # 每个数字需要的木棒数量
values = [0]*301 #剩下相应木棒时候的最大价值
newValues = [0]*301
# 初始0的时候
for i in range(0,10):
    for j in range(1,11): # 每个数字10次拼的机会
        numOfnow = j*numDic[i]# 此次需要的木棒数量
        for k in range(numOfnow,301): # 剩下的木棒数量大于等于当前需要的数量时候
            if values[k] == 0:
                newValues[k - numOfnow] = max(int(str(i) * j),
                                           values[k - numOfnow])
            else:
                newValues[k-numOfnow] = max(int(str(i)*j+str(values[k])),values[k-numOfnow])
    values = newValues[:]
print(max(values))